package gui.modelos;

import java.util.ArrayList;
import java.util.List;

import javax.swing.table.AbstractTableModel;

import vo.InventionTitle;

public class InventionTitleTableModel extends AbstractTableModel {

    private List<InventionTitle> titulos;

    public static final int LANGUAGE = 0;
    public static final int TITLE = 1;

    public InventionTitleTableModel() {
        titulos = new ArrayList<InventionTitle>();
    }

    public int getColumnCount() {
        return 2;
    }

    public int getRowCount() {
        return titulos.size();
    }

    public String getColumnName(int coluna) {
        switch (coluna) {
        case LANGUAGE:
            return "Lang";
        case TITLE:
            return "Title";
        }
        return "";
    }

    public Object getValueAt(int linha, int coluna) {
        InventionTitle titulo = get(linha);
        switch (coluna) {
        case LANGUAGE:
            return titulo.getLang() + "";
        case TITLE:
            return titulo.getTitle();
        }
        return null;
    }

    private InventionTitle get(int linha) {
        return titulos.get(linha);
    }

    /**
     * @return the titulos
     */
    public List<InventionTitle> getTitulos() {
        return titulos;
    }

    /**
     * @param titulos the titulos to set
     */
    public void setTitulos(List<InventionTitle> titulos) {
        this.titulos = titulos;
        fireTableDataChanged();
    }

}
